package com.wtwd.campus.jdzc.service;

import com.wtwd.campus.entity.DeviceInfo;

/**
 * @Author: ldaoliang
 * @DateTime: 2022/2/14 16:10
 * @Description:
 */
public interface ValidService {

    /**
     * 校验设备是否属于交大众创，用户是否绑定该学生
     * @param deviceId
     * @return
     */
    DeviceInfo validDevice(Integer deviceId);

    /**
     * 校验学生id是否正确（是否为交大众创、是否为该用户下绑定的学生）
     * @param studentId
     * @param token
     * @return
     */
    DeviceInfo validStudent(Integer studentId,String token);

    /**
     * 校验修改操作（修改白名单，通讯录，sos，等等只传一个id,判断该id所属的设备是否属于交大同创，该用户是否有权限）
     * @param deviceInfo
     * @return
     */
    boolean updateOperation(DeviceInfo deviceInfo,String token);

    /**
     * 校验studentId和token所对应的用户是否有绑定关系
     * @param studentId
     * @param token
     * @return 如果token失效也返回false,studentId不考虑不在交大众创组织下，绑定时校验即可
     */
    boolean validStudentAndTokenCorrespond(Integer studentId,String token);

    /**
     * 校验是否能够操作：校验studentId和token所对应的用户是否有绑定关系，是否被授权操作
     * @param studentId
     * @param token
     * @return  0-非法操作  1-无权限
     */
    int validCanOperation(Integer studentId,String token);



}
